package com.hxk.ioc.bean;

import org.springframework.beans.factory.FactoryBean;

/**
 * 创建一个自定义的spring FactoryBean
 */
public class UserFactoryBean implements FactoryBean<User> {

    /**
     * ioc容器启动会调用该方法实例化User对象
     * @return
     * @throws Exception
     */
    @Override
    public User getObject() throws Exception {
        return new User("UserFactoryBean", 111);
    }

    /**
     * 返回对象类型
     * @return
     */
    @Override
    public Class<?> getObjectType() {
        return User.class;
    }

    /**
     * 是否设置对象为单例对象，
     * true 单例对象
     * false 多列对象
     * @return
     */
    @Override
    public boolean isSingleton() {
        return true;
    }
}
